221 research outputs found
Invited Talk: Extensions of Graph Transformation Systems for Timed, Continuous, and Probabilistic Behavior
Graph transformation systems can be employed to describe systems withcomplex structural dynamics which states can be captured by attributed graphs.However, like many other standard computer science models such as automata intheir basic form time, continuous behavior, or probabilistic behavior are not supported.In this talk we will report on a number of extensions for graph transformationsystems that have been developed that permit to describe also time, continuousbehavior, probabilistic behavior, timed probabilistic behavior. Referring to the developmentof related extensions for automata, we will discuss how these resultshave been transferred to graph transformation systems. We will discuss furthermorewhich specific problems had to be resolved to transfer the results to graph transformationsystems, which tool support exists, and what are the open challenges foreach of these direction
Incremental Model Transformations with Triple Graph Grammars for Multi-version Models
Like conventional software projects, projects in model-driven software
engineering require adequate management of multiple versions of development
artifacts, importantly allowing living with temporary inconsistencies. In
previous work, multi-version models for model-driven software engineering have
been introduced, which allow checking well-formedness and finding merge
conflicts for multiple versions of a model at once. However, also for
multi-version models, situations where different artifacts, that is, different
models, are linked via automatic model transformations have to be handled.
In this paper, we propose a technique for jointly handling the transformation
of multiple versions of a source model into corresponding versions of a target
model, which enables the use of a more compact representation that may afford
improved execution time of both the transformation and further analysis
operations. Our approach is based on the well-known formalism of triple graph
grammars and the aforementioned encoding of model version histories called
multi-version models. In addition to batch transformation of an entire model
version history, the technique also covers incremental synchronization of
changes in the framework of multi-version models.
We show the correctness of our approach with respect to the standard
semantics of triple graph grammars and conduct an empirical evaluation to
investigate the performance of our technique regarding execution time and
memory consumption. Our results indicate that the proposed technique affords
lower memory consumption and may improve execution time for batch
transformation of large version histories, but can also come with computational
overhead in unfavorable cases.Comment: arXiv admin note: substantial text overlap with arXiv:2301.0062
Efficient Utility-Driven Self-Healing Employing Adaptation Rules for Large Dynamic Architectures
Self-adaptation can be realized in various ways. Rule-based approaches
prescribe the adaptation to be executed if the system or environment satisfy
certain conditions and result in scalable solutions, however, with often only
satisfying adaptation decisions. In contrast, utility-driven approaches
determine optimal adaptation decisions by using an often costly optimization
step, which typically does not scale well for larger problems. We propose a
rule-based and utility-driven approach that achieves the beneficial properties
of each of these directions such that the adaptation decisions are optimal
while the computation remains scalable since an expensive optimization step can
be avoided. The approach can be used for the architecture-based self-healing of
large software systems. We define the utility for large dynamic architectures
of such systems based on patterns capturing issues the self-healing must
address and we use patternbased adaptation rules to resolve the issues.
Defining the utility as well as the adaptation rules pattern-based allows us to
compute the impact of each rule application on the overall utility and to
realize an incremental and efficient utility-driven self-healing. We
demonstrate the efficiency and optimality of our scheme in comparative
experiments with a static rule-based scheme as a baseline and a utility-driven
approach using a constraint solver
On the Unification of Megamodels
Through the more and more widespread application of model-driven engineering (MDE) and the increasing diversity in applied modeling paradigms within single projects, there is an increasing need to capture not only models in isolation but also their relations.This paper is a survey on techniques capturing such relations, such as megamodels or macromodels, based on existing scientific literature. Therefore, we consider various definitions of these techniques. We further examine characteristics of the different techniques.We will propose a unified core definition of a megamodel that captures the core properties of megamodels and which can be extended to the needs of the different applications of megamodels.Finally, we give an outlook on arising application areas for megamodels
- …